$(document).ready(function () {
    getCartSelectedMerList();
});
//初始化购物车列表
function getCartSelectedMerList() {
    //初始化
    let obj = new Object();
    obj.m="list";
    $.ajax({
        //请求方式： 同步 false 异步 true
        async:true,
        //请求方式
        type:"POST",
        //Ajax请求设置xhrFields的withCredentials为true实现跨域访问
        xhrFields:{
            withCredentials:true
        },
        //请求地址
        url:basePath2+"/api/auth/shopCar",
        //数据 ,json字符串
        //返回值的类型
        dataType:"json",
        data:obj,
        //请求成功
        success:function (result) {
            console.log(result);
            if (result.code==200){
                initView(result.data);
            }
        },
        //请求失败
        error:function (e) {
            console.log(e.status);
            console.log(e.responseText);
        }
    });
}
//初始化页面
function initView(result) {
    console.log("..................初始化成功...............");
    //先初始化 让下一步隐藏
    $("#nextShopButton").hide();
    $("table").html("");
    //设计表头
    let tr_header = $("<tr></tr>").addClass("bg");
    let tr_header_th1 = $("<th></th>").text("商品名称");
    let tr_header_th2 = $("<th></th>").text("市场价");
    let tr_header_th3 = $("<th></th>").text("会员价");
    let tr_header_th4 = $("<th></th>").text("数量");
    let tr_header_th5 = $("<th></th>").text("金额");
    let tr_header_th6 = $("<th></th>").text("删除");
    //加入到头里
    tr_header.append(tr_header_th1,tr_header_th2,tr_header_th3,tr_header_th4,tr_header_th5,tr_header_th6);
    //加入到table里
    $("table").append(tr_header);
    let totalMoney = 0;
    //遍历json数组
    $.each(result,function(index,element) {
        let tr = $("<tr></tr>");
        let td1 = $("<td></td>").html("<a class=\"font_red\" href=\"javascript:goMerDetail("+element.merchandise+")\">"+element.merName+"</a>");
        let td2 = $("<td></td>").html("￥"+element.merPrice);
        let td3 = $("<td></td>").html("￥"+element.price);
        let td4 = $("<td></td>");
        let td4_input = $("<input>");
        //对输入框进行加输入事件
        td4_input.attr("oninput","value=value.replace(/^(0+)|[^\\d]+/g,'')");
        //失去鼠标焦点
        td4_input.blur(function () {
            if ($(this).val()==''){
                $(this).val(element.number);
            }
            let num = $(this).val();
            if (num!=element.number){
                //修改数量
                let obj = new Object();
                obj.m="updateNum";
                obj.id=element.id;
                obj.num=num;
                $.ajax({
                    //请求方式： 同步 false 异步 true
                    async:true,
                    //请求方式
                    type:"POST",
                    //Ajax请求设置xhrFields的withCredentials为true实现跨域访问
                    xhrFields:{
                        withCredentials:true
                    },
                    //请求地址
                    url:basePath2+"/api/auth/shopCar",
                    //数据 ,json字符串
                    //返回值的类型
                    dataType:"json",
                    data:obj,
                    //请求成功
                    success:function (result) {
                        console.log(result);
                        if (result.code==200){
                            getCartSelectedMerList();//初始化页面
                        }
                    },
                    //请求失败
                    error:function (e) {
                        console.log(e.status);
                        console.log(e.responseText);
                    }
                });
            }
        });
        td4_input.attr("value",element.number);
        td4_input.attr("name","num");
        td4.append(td4_input);
        let td5 = $("<td></td>").html("￥"+element.money);
        let td6 = $("<td></td>");
        let td6_img = $("<img>").attr("src","/resources/images/delete_01.gif");
        // td6_img.click(delMerItem);//点击事件
        td6_img.bind("click",element.id,delMerItem);
        td6.append(td6_img);
        tr.append(td1,td2,td3,td4,td5,td6);
        $("table").append(tr);
        totalMoney += element.money;
    });
    //加一个尾部
    let tr_footer = $("<tr></tr>").addClass("bg totalTr");
    let td_footer_td = $("<td></td>").attr("colspan","6");
    let td_footer_td_html="<div class=\"totalBill\">" +
        "<img src=\"/resources/images/me03.gif\">" +
        "<span>总金额：￥"+totalMoney+"（不包含配送费用）</span>" +
        "</div>";
    td_footer_td.html(td_footer_td_html);
    tr_footer.append(td_footer_td);
    $("table").append(tr_footer);
    //显示下一步的按钮
    if (totalMoney>0){
        console.log("-----显示按钮-----");
        $("#nextShopButton").show();
    }
}
function delMerItem(event) {
    let id = event.data
    console.log("删除商品信息的id="+id);
    let obj = new Object();
    obj.m="delete";
    obj.id=id;
    $.ajax({
        //请求方式： 同步 false 异步 true
        async:true,
        //请求方式
        type:"POST",
        //Ajax请求设置xhrFields的withCredentials为true实现跨域访问
        xhrFields:{
            withCredentials:true
        },
        //请求地址
        url:basePath2+"/api/auth/shopCar    ",
        //数据 ,json字符串
        //返回值的类型
        dataType:"json",
        data:obj,
        //请求成功
        success:function (result) {
            console.log(result);
            if (result.code==200){
                getCartSelectedMerList();//初始化页面
            }
        },
        //请求失败
        error:function (e) {
            console.log(e.status);
            console.log(e.responseText);
        }
    });
}

//清空购物车
function clearShopCar() {
    let obj = new Object();
    obj.m="clear";
    $.ajax({
        //请求方式： 同步 false 异步 true
        async:true,
        //请求方式
        type:"POST",
        //Ajax请求设置xhrFields的withCredentials为true实现跨域访问
        xhrFields:{
            withCredentials:true
        },
        //请求地址
        url:basePath2+"/api/auth/shopCar    ",
        //数据 ,json字符串
        //返回值的类型
        dataType:"json",
        data:obj,
        //请求成功
        success:function (result) {
            console.log(result);
            if (result.code==200){
                getCartSelectedMerList();//初始化页面
            }
        },
        //请求失败
        error:function (e) {
            console.log(e.status);
            console.log(e.responseText);
        }
    });
}